[excel]怎样将一列中相同的单元格删除,只保留第一个

来源:百度知道 编辑:UC知道 时间:2024/06/14 09:55:44
如:
中国 上海
中国 北京
中国 重庆
美国 纽约
美国 华盛顿

转换成:
中国 上海
北京
重庆
美国 纽约
华盛顿

假设你这两列分别为A列和B列,均从第二行开始。
Excel中Alt+F11打开VB编辑器,将下面的代码粘贴到对应的sheet中。
运行test宏即可。

Sub test()
Dim i, j, beginRow, maxRow As Integer
beginRow = 2
maxRow = Range("A65535").End(xlUp).Row

ReLocate: For i = (beginRow + 1) To maxRow
If Cells(i, 1) = Cells(beginRow, 1) Then
Cells(i, 1) = ""
Else
beginRow = i
GoTo ReLocate
End If
Next i
End Sub

手工做也可以,二楼 醉含笑 的方法就很简单。

如果
A B C
1中国 上海
2中国 北京
3中国 重庆
4美国 纽约
5美国 华盛顿

用一个辅助列C吧
在C2输入 =if(A2=A1,"",A2)
把这条公式拖下去,
应该可以达到你的效果,试试吧

1、如果你的顺序已经排成例子中的情形,则很好办,直接鼠标拖选中第二个“中国”到最后一个“中国”,点DEL删除键;
2、如果你的顺序是乱的,你可以在前边加一个序号(便于整理后恢复原来的顺序),再选中全部有内容的单元格,按国家那一列排序,再用第1种方法删除。然后按序号列排序(升序)恢复原来的排列顺序即可。如果不用恢复原来顺序,则不需要增加序号列。

假设你的这些数据在A列及B列,那么在C1单元格中输入公式:
C1=IF(COUNTIF($A$1:A1,A1)=1,A1,&